home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 090 / pctj0287.arc / MJNZMAC.ASM < prev    next >
Assembly Source File  |  1986-12-16  |  427b  |  25 lines

  1. ; Input:
  2. ;    P1 = label to jump to.
  3. MJNZ    macro    P1
  4.     local    skip_label, skip_label1, skip_label2
  5. ifdef P1
  6.   if (P1 LE $)
  7.     if (($ - P1 + 2) LE 128)
  8.     jnz    P1        ;backward short jump
  9.     else
  10.     jz    skip_label
  11.     jmp    P1        ;backward long jump
  12. skip_label:
  13.     endif
  14.   else
  15.     jz    skip_label1    ;forward jump (pass 2)
  16.     jmp    P1
  17. skip_label1:
  18.   endif
  19. else
  20.     jz    skip_label2    ;forward jump (pass 1)
  21.     jmp    P1
  22. skip_label2:
  23. endif
  24.     endm
  25.